Random access control apparatus and method for slide projector

ABSTRACT

Random access slide projector apparatus is provided for the random access presentation of slide programs. The random access apparatus is responsive to an encoded program tape or to input signals from a local or remote keyboard. The encoded program tape includes predetermined slide address signals as burst format signals corresponding to desired slide positions in the slide tray. The random access apparatus decodes the encoded slide address signals and generates appropriate control outputs to move the slide tray to the desired programmed slide position and project the desired slides. The random access apparatus also provides for the recording of slide address signals in accordance with keyboard entries to prepare random access program tapes. The program tape includes one track for the recording of encoded slide address signals and a second synchronized track for narrative program information to accompany the slide program.

BACKGROUND OF THE INVENTION

A. Field of the Invention

The present invention relates generally to slide projectors and moreparticularly to random access apparatus for controlling the projectionof slides from a slide tray in accordance with an encoded program tapeincluding slide address signals or in accordance with the entry of slideaddress signals from a local or remote keyboard.

B. Description of the Prior Art

Various control apparatus are known for slide projectors to controlpositioning of the slide tray to a slide position and the operation of aslide changer to present the slide to a viewing position. These variouscontrol apparatus are controllable in either a manual mode or a randomaccess mode. Arrangements of this type, for example, are disclosed inU.S. Pat. Nos. 3,296,727, 3,225,652, 3,299,554, 3,895,864, 3,907,414,3,924,942, 3,566,370, 4,041,457, 3,510,215, 3,644,027, 3,733,122,3,652,155, 3,623,803, 3,700,320 and 3,732,546.

While the above described control apparatus of the prior art aregenerally suitable for their intended use, it would be desirable toprovide improved automatic random access operation of a slide projectorby control apparatus in response to encoded prerecorded program tapesincluding slide address signals.

SUMMARY OF THE INVENTION

Accordingly, it is a principal object of the present invention toprovide random access control apparatus for controlling the projectionof slides from a slide tray in accordance with an encoded program tapeincluding slide address signals, the control apparatus also beingcapable of generating said encoded program tape by the recording ofslide address signals in response to the inputs from a keyboard.

It is another object of the present invention to provide random accessoperation of a slide projector in response to an encoded program tapeincluding slide address signals digitally encoded as tone bursts whereinrandom access control apparatus is provided to decode the addresssignals.

It is a further object of the present invention to provide random accessslide projector apparatus that operates in response to eitherprerecorded encoded program tapes including slide address signals or byslide address signals inputted on a local or remote keyboard.

It is yet another object of the present invention to provide randomaccess operation of a slide projector from a prerecorded program tapeincluding slide address signals on one track and synchronized programinformation on another track.

Briefly, these and other objects of the present invention are achievedby providing random access slide projector apparatus for the randomaccess presentation of slide programs. The random access apparatus isresponsive to an encoded program tape or to input signals from a localor remote keyboard. The encoded program tape includes predeterminedslide address signals as burst format signals corresponding to desiredslide positions in the slide tray. The random access apparatus decodesthe encoded slide address signals and generates appropriate controloutputs to move the slide tray to the desired programmed slide positionand project the desired slides. The random access apparatus alsoprovides for the recording of slide address signals in accordance withkeyboard entries to prepare random access program tapes. The programtape includes one track for the recording of encoded slide addresssignals and a second synchronized track for narrative programinformation to accompany the slide program.

The invention both as to its organization and method of operationtogether with further objects and advantages thereof will best beunderstood by reference to the following specification taken inconjunction with the accompanying drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram representation of the control apparatus of thepresent invention for random access operation of a slide projector;

FIG. 2 is a more detailed block diagram representation of the controlapparatus of the present invention of FIG. 1;

FIG. 3 is a logic and schematic diagram of a tray advance detectioncircuit of the control apparatus of FIGS. 1 and 2;

FIGS. 4a and 4b when combined as shown in FIG. 4c form a logic andschematic diagram of the control apparatus of FIG. 2;

FIG. 5 is a plan view of portions of the control apparatus of FIGS. 1, 2and 4 with portions cut away for clarity, illustrating the turntablecarrying the slide tray, the coded aperture slide position ring and thefeedback sensing arrangement of the control apparatus;

FIG. 6 is a sectional view of the apparatus taken along the line 6--6 ofFIG. 5;

FIG. 7 is a fragmentary view illustrating the coded aperture ring andturntable of the control apparatus of FIGS. 1 through 4;

FIG. 8 is a sectional view of the apparatus taken along the line 8--8 ofFIG. 7.

FIG. 9 is a sectional view similar to FIG. 6 and illustrating operationof the slide position sensing arrangement with a different slide tray;

FIG. 10 is a graphical representation illustrating signal waveforms atvarious locations in the control apparatus of FIGS. 1 through 4;

FIG. 11 is a graphical representation of a typical slide address burstformat waveform that is encoded by the control apparatus of FIGS. 1through 4 for random access operation;

FIGS. 12a and 12b when assembled as denoted represent a logical flowdiagram illustrating the general flow of program steps performed by thecontrol apparatus of the present invention for encoding slide addresssignals for a program tape;

FIGS. 13a and 13b when assembled as denoted represent a logical flowdiagram illustrating the general flow of program steps performed by thecontrol apparatus of the present invention for decoding slide addresssignals from a program tape

FIG. 14 is a schematic, logic and block diagram representation of theCPU controller and of other portions of the control apparatus of FIGS. 1and 2; and

FIGS. 15 and 16 are graphic representations illustrating signalwaveforms of the operation of the control apparatus for varying loadconditions of the slide tray drive arrangement.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT

Referring now to FIG. 1, the control apparatus 10 and CPU random accesscontroller 24 of the present invention provide random access operationof projection apparatus. The control apparatus 10 in response to controlsignals at 14 controls rotation of a slide tray and operation of a slidechange mechanism to control movement of a slide adjacent the slideprojection station between a viewing position and a slide tray position.

The control signals at 14 provide digital signals on one or more linesrepresenting a forward or reverse mode of slide tray movement to whichthe control apparatus 10 is responsive to appropriately move the slidetray to a desired position.

The projection apparatus of FIG. 1 includes a cassette tape arrangementincluding appropriate controls referred to generally at 42 forcontrolling the transport of a cassette tape referred to at 44. A tapetransducing head 40 provides an audio output to a preamplifier stage350. The preamplifier stage 350 provides an audio output 38. Thecassette tape includes encoded slide address signals on one track andrecorded narrative information on a separate track. The narrative trackinformation is transduced and provided by the audio circuitry in anaudio, lamp, and power supply circuitry stage referred to generally at34. Thus, a synchronized narrative program and slide selection isprovided in timed relationship.

In a manual random access arrangement of the projection apparatus ofFIG. 1, the CPU controller 24 provides the control signals at 14 over aninterconnecting signal path 26. The CPU controller 24 is responsive tothe inputs from a keyboard 28 to provide random access operation of thecontrol apparatus 10. A desired slide number is inputted on the keyboard28 and the CPU controller 24 determines the appropriate rotation of theslide tray via the control apparatus 10 that is required to bring thedesired slide to the slide changer viewing position as will be explainedin more detail hereinafter.

The CPU controller 24 in an automatic random access mode is alsoresponsive to encoded burst signals on the cassette tape 44 definingspecific slide address positions in the slide tray. The CPU controller24 decodes the encoded slide address burst signals on a data line 25aconnected at the output of the preamplifier stage 350 and provides thecontrol signals at 14 via the interconnecting signal path 26 for randomaccess operation in accordance with the recorded program cassette tape.

The CPU controller 24 also provides for the recording of programcassette tapes over a data line 25b in response to inputs from thekeyboard 28 in a program record mode by recording the correspondingencoded slide address signals in a burst signal format on the programtape 44. Further, mode and function controls are also encoded anddecoded by the CPU controller 24.

In an alternate embodiment of the projection apparatus of FIG. 1 where aCPU controller 24 is not utilized, the control signals at 14 areprovided from a forward/reverse tray advance control switch 16 of thelocal control panel 18. The local control panel 18 also includes anon/off power switch and a lamp mode control switch. The control signalsat 14 are also capable of being provided from a remote control unit 20over a remote cable interconnection 22. The remote control unit 20includes forward and reverse slide advance controls.

In this alternate embodiment, an advance control signal 12 is providedby a digital filter stage 36. The control signal 12 similarly to thecontrol signal 14 is utilized by the control apparatus 10 to controlrotation of a slide tray and operation of a slide change mechanism. Thecontrol signal 12 represents a slide advance signal derived from theprogram tape 44 to which the control apparatus 10 is responsive toadvance the slide tray by one slide position in response to eachoccurrence of the signal 12. The digital filter stage 36 is connected tothe audio output 38 from the preamplifier stage 350. The cassette tape44 includes 1 KHz sinewave or encoded advance bursts that are decoded bythe digital filter stage 36 to provide desired advance control signalsat 12 in accordance with the desired program recorded on the cassettetape 44.

In the preferred embodiment of the projector apparatus utilizing a CPUcontroller 24, the forward/reverse control 16 of local control 18 isdeleted since forward and reverse keys are provided on the keyboard 28.The remote control unit 20 is also not utilized. Further, the digitalfilter stage 36 is not utilized and the output 12 is not functional; theCPU controller 24 performing all the required decoding of the encodedslide address signals on the program cassette tape 44.

The projection apparatus with the CPU controller 24 is also operable toprovide the control signal 14 over the interconnection 26 by means of awireless remote control transmitter unit 30 and a receiver 32. Theremote control transmitter 30 and receiver 32 operate, for example, onthe basis of infrared energy transmission. The receiver 32 responds tothe transmitted signals from the transmitter 30 and provides desiredslide information as data signals to the CPU controller 24. In aspecific arrangement, the remote control and transmitter unit 30 isprovided with a keyboard such as the keyboard 28 such that completefunctioning and control of the controller apparatus 10 is provided bythe remote control transmitter unit 30.

The control apparatus 10 includes a forward/reverse logic stage 50 thatis responsive to the mode advance control signals 12, 14. Theforward/reverse logic stage 50 generates forward and reverse modesignals 52 to a slide elevate logic stage 54 and a slide tray logicstage 56 in accordance with the state of the input signals 12, 14. Inresponse to a forward or reverse mode signal from the output 52, theelevate logic stage 54 is set to slide elevate mode and provides anoutput at 58 to a slide elevate motor drive amplifier 60. The motordrive amplifier 60 at output 62 drives the slide elevate motor 64 toelevate a slide 66 in the projection position to an upward slide trayposition through operation of a slide elevate mechanism 68. The slideelevate mechanism 68 (not shown in detail) receives a unidirectionalinput from the slide elevate motor 64 to drive a reversible feed screwor endless worm arrangement similar in general respects to the drivearrangement of U.S. Pat. No. 3,353,443 and described in detail in U.S.application Ser. No. 336,470 filed by N. Mischenko on Dec. 31, 1981, nowU.S. Pat. No. 4,429,963.

During normal steady state operation of the projector apparatusincluding initial power-up of the system and between slide changes, theelevate logic 54 is conditioned with the slide elevate mechanism 68 inthe downward slide projection position with a slide 66 in the projectionposition. Thus, for selection of a new slide for projection in thesingle slide advance mode, random access slide programming mode, orrapid search mode between various slide tray positions, the basicoperational cycle begins with elevation of the particular slidepresently in the projection position back into the upward tray position,and proceeds with the controlled rotation of the slide tray by one ormore slide positions and finishes with the lowering of the desired slidefor presentation into the projection position by operation of the slideelevate motor 64.

An elevate position sensing arrangement 70 is appropriately positionedproximate the slide elevate mechanism 68 and includes up and down limitsensing switches to detect predetermined movement of the slide elevatemechanism 68 between a predetermined tray position and a predeterminedprojection position at the slide elevation station. The elevate positionsensing arrangement 70 provides outputs at 72 to the elevate logic stage54 to terminate operation of the elevate signal 58 and thusappropriately drive the slide elevating mechanism 68 between thepredetermined up and down positions. A current sensing stage 74 monitorscurrent through the slide elevate motor 64 and provides at output 76 adisable control signal to the elevate logic stage 54 in the event ofsensed current of an excessive value. The elevate logic stage 54responds to an excessive current condition at 76 to terminate the drivesignal to the slide elevate motor 64.

After the slide presently in the projection position has been elevatedto the slide tray position, the control apparatus 10 proceeds to theslide tray movement mode wherein the slide tray is moved by one or morepositions in an appropriate forward or reverse direction in response tothe forward/reverse logic stage 50.

Specifically, the signal 72 from the elevate position sensing arrangment70 is connected as an input to the slide tray logic stage 56. The slidetray logic stage 56 in response to the signal at 72 is conditioned tothe tray drive mode. In response to the status of the forward or reversemode signal 52 as an input to the slide tray logic stage 56, the slidetray logic stage 56 outputs at 80 an appropriate forward or reverse traydrive signal to a tray motor drive amplifier 82. The slide tray logicstage 56 also includes a mode select latch operable in either a forcedmode or a servo mode. Additionally, the slide tray logic stage 56provides a mode control output 84 to disable the elevate logic stage 54to insure disabling of the elevate function when the slide tray logic 56is conditioned to the forced mode.

In response to the tray drive signal 80, the slide tray motor driveamplifier 82 at output 86 provides a drive signal of appropriatepolarity to operate a slide tray motor 88 in either the forward orreverse direction. The slide tray motor 88 is operatively coupled toappropriately drive a slide tray drive and turntable arrangement 90 inthe corresponding forward or reverse direction.

The slide tray drive and turntable arrangement 90 includes acircumferential apertured ring with one aperture corresponding to eachrespective slide tray position as illustrated in FIGS. 7 and 8 anddescribed in more detail hereinafter. A slide tray position sensingarrangement 92 is disposed in the path of travel of the circumferentialcoded aperture ring of arrangement 90.

The slide tray position sensing arrangement 92 includes a light sourceand two photodetectors all as shown in more detail in FIGS. 2, 4, 5 and6. The two photodetectors are arranged in predetermined spacedrelationship along the circumferential path of travel of the apertureconfiguration so as to provide differential output sensing of each ofthe apertures as each respective aperture is moved within the operatingrange of the dual photodetectors. Dependent upon the direction of slidetray rotation, as the aperture approaches the dual photodetectorstation, one of the photodetectors will receive illumination of a highermagnitude than the other photodetector. Further, when the aperture isarranged directly over the midpoint between the two photodetectors, thephotodetectors receive equal illumination through the aperture. Theoutputs at 94 from the differential photodetectors of the sensingarrangement 92 are connected to the slide tray logic stage 56 to provideappropriate servo loop feedback control signals to accurately positionthe slide tray in a desired position.

In accordance with important aspects of the present invention, thecontrol apparatus 10 by means of the slide tray logic stage 56 isoperable in a first forced mode of operation in the tray drive modeduring which the slide tray logic stage 56 by means of output signal 80drives the slide tray motor 88 between one or more slide positions asdependent upon the input signal 52.

If the input signal 52 remains in either a high forward or reversesignal state, the slide tray logic 56 is maintained in a forced mode forrapid search or random access with movement of the slide tray andturntable between the present slide position and a desired slideposition. When the control signal 52 is generated for a single slideadvance in the forward or reverse direction, the forced mode ofoperation by means of the slide tray logic stage 56 and signal 80provides for forced mode control movement of the slide tray between thepresent slide position and the next successive slide position.

The forced mode of operation is terminated for a single advance slidesituation when the slide tray position sensing arrangement 92 by meansof output signals 94 senses the next slide position. In response to thesensed condition at signal 94, the slide tray logic stage 56 terminatesforced mode operation and is then operable in the servo mode ofoperation under the control of the outputs at 94 from the dualphotodetector devices to accurately position the slide tray andturntable 90 at the next slide position. The forced mode of operation issimilarly terminated and the servo mode of operation initiated duringrandom access or rapid search situations after the control signal 52 isterminated and upon the next occurrence of the signal 94 from the slidetray position sensing arrangement 92.

The control apparatus 10 also includes a motion sensing stage 96 that isresponsive to the slide tray motor control voltage 86 and that providesan output at 98 to the slide tray logic stage 56. The output at 98indicates that the slide tray has moved, stopped and locked on to theappropriate slide tray position in the servo mode. The slide tray logic56 responds to the input signal 98 and generates an output at 84 to theelevate logic 54 to set the elevate logic 54 to the enable mode to allowdownward positioning of the slide by the elevate mechanism 68 to lowerthe slide at the elevate station into projection position after traymovement has terminated. Further, the slide tray logic stage 56 uponentering the servo mode has been disabled or reset from the tray drivemode.

The slide tray logic stage 56 outputs at 100 a slide count signal foruse by projection apparatus including the CPU controller 24 to provideincremental slide position movement information to the controller 24.The incremental position signal 100 is provided to the CPU controller 24since no absolute position information is available in the preferredembodiment of the tray position sensing arrangement of the controlapparatus 10. Thus, in response to a known start position and theincremental position signals at 100, the CPU controller 24 stores thepresent position of the slide tray.

The control apparatus 10 also includes a tray drive motor currentsensing stage 102 that monitors current through the slide tray motor 88and provides an excessive current signal 104 to the slide tray logicstage 56. The slide tray logic stage 56 in response to the excessivecurrent signal 104 terminates tray drive movement by terminating thetray movement signal 80.

Referring now to FIG. 2 and considering the detailed structure andoperation of the control apparatus 10 of the present invention, theforward/reverse logic stage 50 in response to the input signals 12, 14provides a forward mode signal 52a and a reverse mode signal 52b witheither the forward or reverse signal being active as dependent upon thestate of the input signals 12, 14. As discussed hereinbefore, for thepreferred embodiment utilizing a CPU controller 24, the signal 12 is notutilized and is non-functional. As illustrated in FIG. 2, the elevatelogic stage 54 includes an elevate/reset gating stage 110, an elevatedrive latch stage 112 and an elevate/tray interlock stage 114.Similarly, the slide tray logic 56 of FIG. 1 as illustrated in FIG. 2includes a tray direction and mode control stage 118, a tray drive modeselect latch 120, a tray reset gating stage 122, and an aperture centerdetector stage 123. Additionally, like elements in FIGS. 1 and 2 aredesignated by like reference numerals.

The slide tray position sensing arrangement 92 of FIG. 2 depicts thelight source 124, in appropriate positional relationship with the dualphotodetectors 126, 128. A partial edge view of the coded aperture ringof the turntable arrangement 90 is illustrated in operative positionwith the light source 124 and the two photodetectors 126, 128. Anaperture 132 of the coded ring 130 is also shown in the aligned positionmidway between the photodetectors 126, 128 and aligned with the lightsource 124 corresponding to the at-rest, servo mode position whereinequal illumination is received by both photodetectors 126 and 128. Theoutput 94a of the photodetector 128 is connected through a seriesresistor to provide the output signal 95a for connection with theforward drive signal 80a to the tray motor drive amplifier stage 82. Theoutput 94a is also directly connected to the aperture center detectorstage 123. Similarly, the output 94b of the photodetector 126 isconnected through a series resistor to provide the output signal 95b forconnection with the reverse drive signal 80b. The output 94b is alsodirectly connected to the aperture center detector stage 123.

The elevate/reset gating stage 110 in response to an active signal oneither the forward mode line 52a or the reverse mode line 52b sets theelevate drive latch 112 over line 136 to the elevate enable mode. Withthe elevate drive latch 112 in the elevate enable mode, an elevate drivesignal output 138 of the latch 112 is coupled through an elevate/trayinterlock gate 114 to activate the elevate motor drive 60 and thusprovide movement of the elevate motor 64 to elevate a slide from theprojection position to the slide tray position. The elevate/trayinterlock stage 114 is implemented in a specific embodiment by an ANDgate with the signal 138 as one input to the AND gate 114. The secondinput to the AND gate 114 is connected to the elevate mode enable signal84 outputted from the tray drive mode select latch 120 of the slide traylogic 56.

Upon movement of the elevate motor 64 to move the slide up into theslide tray position, an up limit switch 140 of the elevate positionsensing arrangement 70 is closed to provide a signal at 72a to theelevate switch debounce stage 116. The elevate position sensingarrangement 70 also includes a down limit sensing switch 142 which isclosed when the elevate motor 64 moves the slide elevate mechanism 68 tothe downward projection position with a corresponding down limit signaltransition 72b being supplied to the elevate switch debounce stage 116.

The elevate switch debounce stage 116 in response to a closure of eitherswitch 140 or 142 indicated by the respective input 72a, 72b provides aswitch transition output signal 144 to the elevate/reset gating stage110. The elevate/reset gating stage 110 in response to the switchtransition signal at 144 provides an output signal at 146 to reset theelevate drive latch 112 to disable the elevate drive signal 138 thusterminating the upward slide elevate mode. The elevate switch debouncestage 116 in response to closure of the up limit switch 140 at input 72aalso provides a switch transition signal at output 148 to set the traydrive mode select latch 120 to the tray drive mode.

The tray drive mode select latch 120 in response to the signal at 148provides the disabling control signal 84 and further provides a traydrive enable signal 150 to the tray direction and mode control stage118. When enabled by the tray drive signal 150, the tray direction andmode control stage 118 in accordance with either the forward mode signal52a or the reverse mode signal 52b being active provides the appropriatecorresponding forward drive signal 80a or reverse drive signal 80b tothe tray motor drive amplifier 82 to actuate the tray motor 88 to movethe slide tray. The tray drive enable signal 150 from the latch 120 alsodisables servo mode operation of the tray direction and mode controlstage 118.

The elevate/reset gating stage 110 provides a forced mode sustainingsignal 152 to the tray reset gating stage 122 in response to the activestate of either the forward or reverse mode signals 52a or 52brespectively. It will be remembered that in a random access or rapidsearch mode, one of the corresponding mode signals 52a or 52b willremain active. On the other hand, in a single slide advance condition,the mode signals 52a or 52b will remain active for only a relativelyshort time duration and will be inactive during the remaining time inwhich the tray drive latch 120 is in the tray drive enable mode. Thus,if the forced mode sustaining signal 152 is active, the tray directionmode control stage 118 continues to provide either the forward drivesignal 80a or the reverse drive signal 80b to the tray motor driveamplifier stage 82.

Thus, if the tray direction and mode control stage 118 is controlled ina rapid search or random access mode, one of the appropriate drivesignals 80a or 80b is active to control operation of the slide traymotor 88 to move the slide tray drive and turntable 90 through theappropriate number of slide positions.

When the desired slide position is reached for either a single slideposition advance or in the rapid search or random access mode, the drivesignal 80a or 80b that is active is disabled by means of the terminationof the drive signal 150. The drive signal 150 is terminated when thephotodetectors 126, 128 become active corresponding to the positioningof the aperture 132 in the vicinity of the sensing arrangement 92corresponding to the desired slide position such that light from thesource 124 impinges upon the photodetectors 126, 128. Current to thephotodetectors 126, 128 is sourced by means of a common supply line 156from the tray reset gating stage 122.

The tray drive motor current sensing stage 102 provides a control outputat 155. The control output at 155 is connected to the supply line 156 toadjust the voltage level at 156 in accordance with the frictionalloading on the tray motor 88 as will be explained in more detailhereinafter in connection with FIG. 4. The control output 155 providesappropriate delay of the transition from the forced mode to the servomode under varying load conditions.

When the photodetectors 126, 128 begin to conduct in response to lightimpinging thereon from the source 124 through the aperture 132, the trayreset gating stage 122 in response to the signal level at 156 provides atray drive reset signal at 158 to reset the tray drive mode select latch120 and terminate the signal 150. Further, if the elevate/reset gatingstage 110 detects a continued force drive mode signal on either of thelines 52a or 52b corresponding to rapid search or random access mode,the signal 152 is active to prevent the tray reset gating stage 122 fromgenerating the reset signal 158.

Thus, in the single advance slide situation or in the random access orrapid search mode after the desired position has been reached and thesignals 52a, 52b are inactive, the forced mode signal of 80a or 80b isinactive and the servo mode signals 94a, 94b are active to accuratelyposition and stop the slide tray in the desired aligned slide trayposition with the slide in the corresponding slide tray position alignedwith the slide elevate mechanism 68.

In the case of a single slide advance, the drive signal 150 is utilizedby the tray reset gating stage 122 as a temporary servo mode inhibitsignal. In this way, the servo mode is temporarily inhibited for apredetermined time interval after the occurrence of the drive signal 150as will be explained in more detail hereinafter in connection with FIG.4.

When the tray drive motion sensing stage 96 detects the appropriatesequence of control voltage changes at output 86 to the tray motor 88,the signal 98 is generated to the elevate/reset gating stage 110. Inresponse to the signal 98, the elevate/reset gating stage 110 providesthe latch enabling signal 136 to set the elevate drive latch 112 to theelevate mode.

Thus, the elevate drive latch 112 when set to the elevate mode providesthe elevate enable signal 138 through the elevate tray interlock gate114 to provide operation of the elevate motor 64 with the slide elevatemechanism in the up position to lower the slide to the down orprojection position.

When the down limit switch 142 is actuated by the slide elevatemechanism 68 with the slide in the down projection position, the elevateswitch debounce stage 116 in response to the switch transition at 72bprovides the switch transition signal 144 to the elevate/reset gatingstage 110 which in turn by means of output 146 resets the elevate drivelatch 112 to terminate elevate operation. At this point the stable,steady state operating condition of the control apparatus 10 has beenreached with the desired slide in the projection position. The controlapparatus 10 now remains in this state until another slide advancecontrol is received by the forward/reverse logic stage 50.

The tray reset gating stage 122 provides the slide count pulse signal at100 for the CPU controller 24 (where utilized) at the time when thecurrent through line 156 is detected which indicates the approach of anaperture.

The aperture center detector stage 123 in response to the photodetectoroutput signals 94a, 94b provides at output 157 a pulse control signal tothe tray reset gating stage 122. The pulse control signal at 157 isutilized by the tray reset gating stage 122 under high frictionalloading conditions of the tray drive motor 88 to ensure initiation ofthe servo mode and termination of the forced mode as will be explainedin more detail hereinafter in connection with FIG. 4.

Referring now to FIG. 4 and considering now the details of a specificembodiment of the control apparatus 10 of FIGS. 1 and 2, for projectionapparatus of the preferred embodiment utilizing the CPU controller 24,the signal path 26 includes a forward control signal 26a and a reversecontrol signal 26b. For the alternate embodiment of projection apparatusnot including a CPU controller 24, the control signals at 14 include aforward advance control signal 14a and a reverse advance control signal14b provided by respective contacts of the control switch 16 forprojection apparatus provided with the manual advance mode control. Acommon connection of the switch 16 is connected to ground potential at160.

The forward control signal 14a or 26a is connected to theforward/reverse logic stage 50 through an input resistor to the base ofan NPN transistor 162. The collector of the transistor 162 provides theforward control output signal 52a. The reverse control signal 14b or 26bis connected through an input resistor to an NPN transistor 164. Thecollector of the transistor 164 is connected to provide the reversecontrol output signal 52b.

In the alternate embodiment without a CPU controller 24, the automaticadvance signal 12 from the digital filter 36 corresponding to programcassette tape advance is connected to the base of the transistor 162.

The forward/reverse logic stage 50 includes a direction control latchformed by two, two-input NOR gates 166 and 168. The forward controlsignal 52a is connected to one input of the gate 168 and the reversecontrol signal 52b is connected to one input of the gate 166. The outputof the gate 166 is connected to the second input of the gate 168 and theoutput of the gate 168 is connected to the second input of the gate 166.The output of the gate 166 forms a forward directional mode latch signal170 and the output of the gate 168 forms the reverse directional modelatch signal 172. The latch directional signals 170 and 172 are providedto the tray motor direction and mode control stage 118 in lieu of therespective control signals 52a, 52b of FIG. 2.

The tray motor direction and mode control stage 118 includes a first twoinput AND gate 174 having one input connected to the forward signal 170and a second input connected to the tray drive enable signal 150 fromthe tray drive latch 120. A second two input AND gate 176 includes afirst input connected to the reverse mode signal 172 and a second inputconnected to the tray drive enable signal 150. A servo mode disabletransistor 178 includes a base lead connected through an input resistorto the tray drive enable signal 150. The collector of the transistor 178is connected to provide an output 180 as a servo drive disable controlsignal to the tray motor drive 82. The emitter of the transistor 178 isconnected to ground potential.

The forward and reverse control signals 52a and 52b are each connectedto one input of a two-input OR gate 182 of the elevate/reset gatingstage 110. The output of the OR gate 182 forms the forced modesustaining signal 152. The output of the OR gate 182 is connectedthrough a capacitor 184 to one input of a two-input OR gate 186. Theoutput of the OR gate 186 forms the elevate latch enable signal 136connected to the elevate drive latch 112. A resistor 188 is connectedbetween ground potential and the junction between the capacitor 184 andthe first input to the gate 186. A second input to the gate 186 isconnected to ground potential through a resistor 190. The second inputof the gate 186 is also connected through a capacitor 192 to the controloutput 98 of the tray drive motion sensing stage 96.

Another two-input OR gate 194 of the elevate/reset gating stage 110includes a first input connected to the switch transition output 144 ofthe elevate switch debounce stage 116. The second input of the OR gate194 is connected through the series combination of a resistor 196 and acapacitor 198 to a +12 V supply line 200. The second input of the gate194 is also connected to ground potential through a resistor 202. Thesecond input of the gate 194 is also connected through a diode arrangedcathode to anode and a resistor 206 to the output 76 of the currentlimit sensing stage 74.

The elevate latch enable signal 136 is connected to a first input of atwo-input NOR gate 208 of the elevate drive latch 112. The output of theNOR gate 208 is connected to one input of a two-input NOR gate 210. Thesecond input of the NOR gate 210 is connected to the elevate latch resetsignal 146. The output of the NOR gate 210 is connected to the secondinput of the NOR gate 208 to form a latch arrangement of the gates 208and 210. The output of the NOR gate 210 is connected to provide theelevate enable signal 138 to the elevate tray interlock gate 114 as oneinput to the two-input AND gate 114. The second input to the AND gate114 is the enable signal 84 from the tray drive latch stage 120.

The output of the elevate tray interlock gate 114 drives the elevatemotor drive amplifier stage 60 by connection through a series resistorto an operational amplifier stage 216 at the noninverting input of theamplifier. The output of the amplifier 216 is coupled to a push-pulloutput stage including transistors 218 and 220. The common emitterconnection of the transistors 218 and 220 provides the elevate drivesignal output 62 to the elevate motor 64. The other end 221 of the motor64 is connected to the noninverting input of an amplifier 222 of thecurrent limit sensing stage 74 for the elevate motor. The output of theelevate motor drive amplifier 216 is connected to the inverting input ofthe amplifier 216 through a resistor 224. Connected across the resistor224 is a series combination of two resistors 226 and 228. The junctionof the resistors 226 and 228 is connected to ground potential through abraking control capacitor 230 whose function will be explained in moredetail hereinafter.

The elevate switch debounce stage 116 includes a latch formed by two,two-input NAND gates 232 and 234. One input of the gate 232 is connectedto the up-limit switch signal input 72a from the up-limit switch 140.One input of the gate 234 is connected to the down-limit switch inputsignal 72b from the down-limit switch 142. The switch actuator 236 forthe switches 140 and 142 is operated by the slide elevate mechanism 68.The output of the gate 232 is connected to the second input of the gate234 and the output of the gate 234 is connected to the second input ofthe gate 232. The output of the gate 232 is connected through acapacitor 238 to provide the up-switch transition control signal 148.The control signal 148 is connected to ground potential through aresistor 240. The up-switch transition signal output 148 is alsoconnected to one input of an OR gate 242. The output of the gate 242forms the switch transition control line 144. The output of the gate 234is connected through a capacitor 244 to the second input of the gate242. The second input of the gate 242 is also connected to groundpotential through a resistor 246.

The tray reset gating stage 122 includes a two-input NOR gate 250 havingone input connected to an initialize signal 197 from the elevate resetgating stage 110. The output of the gate 250 forms the slide countoutput signal 100. The output of the gate 250 is also connected to afirst input of a two-input NOR gate 252. The second input of the NORgate 252 is connected to the forced mode sustaining signal 152. Theoutput of the gate 252 is connected through a series resistor to providethe signal 158. The second input of the gate 250 is connected through acapacitor 254 to the output of an operational amplifier 258. The secondinput of the gate 250 is also connected through a resistor 260 to groundpotential.

The noninverting input of the amplifier 258 is connected to a referencevoltage provided at the junction of two resistors 262 and 266. Theresistor 266 is connected to the +12 V supply and the resistor 262 isconnected to ground potential. The noninverting input of the amplifier258 is also connected to the output 157 of the aperture center detector123. Further, the noninverting input of the amplifier 258 is connectedthrough the series combination of a diode 261 arranged cathode to anodeand a capacitor 263 to the tray drive signal 150. A resistor 265 isconnected between ground potential and the junction of the diode 261 andthe capacitor 263. The inverting input to the amplifier 258 is connectedto the +12 V supply through a resistor 264. The inverting input of theamplifier 258 is also connected to the photodetector current sourcesignal line 156 and to the control output 155 of the tray currentsensing stage 102.

The tray drive mode select latch stage 120 includes two, two-input NORgates 268 and 270 interconnected in a latch arrangement. The latch gate268 includes the two signals 104 and 158 at one input. The second inputof the gate 268 is connected to the output of the gate 270. The outputof the gate 268 is connected to one input of the gate 270. The secondinput of the gate 270 is connected to the up-switch transition signaloutput 148. The output of the gate 268 provides the tray drive controlenable signal 150 to the tray motor direction and mode control stage118. The output of the gate 270 is connected to provide the elevatecontrol signal 84.

The tray motor drive stage 82 includes an amplifier 274 having anoninverting input connected through a series resistor 276 to theforward drive signal 80a and an inverting input connected through aseries resistor 278 to the reverse drive signal 80b. The output of theamplifier 274 is connected to a push-pull output stage includingtransistors 282 and 284. The common emitter output of the transistors282 and 284 is connected to the motor control signal 86 to the slidetray motor 88. The feedback resistor 286 is connected between the outputof the amplifier 274 and the inverting input. Two resistors 288 and 290are connected across the resistor 286. A capacitor 292 is connectedbetween a junction of the resistors 288 and 290 and ground potential.The control output 95a of the forward photodetector 128 is connectedthrough the series combination of two diodes 294 and 296 arranged anodeto cathode to the noninverting input of the amplifier 274.

Similarly, the control output 95b of the reverse photodetector 126 isconnected through the series combination of two diodes 298 and 300arranged anode to cathode to the inverting input of the amplifier 274.The servo inhibit and disable signal 180 from the tray motor directionand mode control stage 118 is connected to the junction of the cathodesof the two diodes 302 and 304. The anode of the diode 302 is connectedto the reverse servo control signal 95b and the anode of the diode 304is connected to the forward servo control signal 95a. A resistor 306 isconnected between ground potential and the second end 307 of the traymotor 88.

The motor circuit line 307 is also connected to the junction of tworesistors 308 and 310. The other end of resistor 310 is connectedthrough a resistor 312 to the -12 V supply line 314. The second end ofthe resistor 308 is connected through a resistor 316 to the +12 Vsupply. Resistors 308, 310, 312 and 316 are provided in the currentsensing path of the tray motor current sensing stage 102. The junctionof resistors 308 and 316 is connected through a diode 318 arranged anodeto cathode to the noninverting input of an amplifier 320 of the traymotor current sensing stage 102. The junction of the resistors 310 and312 is connected through a diode 322 arranged cathode to anode to theinverting input of the amplifier 320.

The output of the amplifier 320 is connected through a series resistor323 to the emitter of an NPN transistor 324. The collector of thetransistor 324 provides the control output 155 to the tray reset gatingstage 122. The emitter of the transistor 324 is also connected to groundpotential through a resistor. The base of the transistor 324 isconnected to the junction of two resistors that are connected in seriesbetween the +12 V supply and ground potential. The output of theamplifier 320 is also connected to one end of a potentiometer 325. Theother end of the potentiometer 325 is connected to ground potential. Thewiper arm or tap of the potentiometer 325 is connected through twoseries resistors to a buffer gate 326. A capacitor is connected betweenthe junction of the two series resistors and ground potential. Theoutput of the buffer gate 326 is connected through a diode 327 arrangedanode to cathode to provide the excessive current signal 104.

The tray drive motion sensing stage 96 includes a latch arrangementformed by two, two-input NAND gates 330 and 332. The output of gate 330forms the elevate set input signal 98. The output of the gate 332 isconnected to one input of the gate 330. The output of the gate 330 isalso connected to one input of the gate 332. The second input of thegate 332 is connected to the elevate mode enable signal 84. The secondinput of the gate 330 is connected through a resistor 334 to the outputof the amplifier 336. The second input of the gate 330 is also connectedthrough a capacitor 338 to ground potential. The noninverting input ofthe amplifier 336 is connected through the series combination of a diode340 arranged cathode to anode and a resistor 342 to the tray motor drivesignal 86. Similarly, the inverting input of the amplifier 336 isconnected through a diode 344 arranged anode to cathode to the junctionof the resistor 342 and the diode 340.

The aperture center detector stage 123 includes an amplifier 331 havinga noninverting input connected through a series resistor to thephotodetector output 94b and an inverting input connected through aseries resistor to the photodetector output 94a. The output of theamplifier 331 is connected through a series resistor 333 to the anode ofa first diode 335 and to the cathode of a second diode 337. The cathodeof the diode 335 is connected to the inverting input of an amplifier339. The anode of the diode 337 is connected to the noninverting inputof the amplifier 339. The output of the amplifier 339 is connectedthrough the series combination of a capacitor 341 and a resistor 343 tothe control output 157.

Considering now the operation of the control apparatus 10 of FIG. 4 andreferring additionally to the timing waveform diagram of FIG. 10,operation proceeds with the initiation of the slide advance controlsignal; for example, a forward advance signal transition on the forwardcontrol line 26a from a high level to a low level. In response to thelow level at line 26a, the transistor 162 is turned off and the signalat 52a is a high transition signal.

For a single slide advance the result at 52a is a short durational hightransition signal. For the rapid search and random access modes to movethe slide tray a number of slide tray positions, the signal at 52a ismaintained at a high transition level for a period of time correspondingto a desired number of slide positions as determined by the slide countsignal 100.

In response to the high transition at 52a, the latch formed by gates 166and 168 in the forward/reverse logic stage 50 is latched in the forwardmode with a high level at output 170. Further, the high transitionsignal at 52a is coupled through the gate 182 of the elevate set resetgating stage 110 and through the capacitor 184 with the gate 186providing a high transition pulse to the gate 208 and the elevate drivelatch 112. The result is the setting of the elevate drive latch 208 tothe elevate latch condition with a high output at 138 of the gate 210coupled to the gate 114 of the elevate tray interlock 114. This resultsin the elevate motor drive amplifier stage 60 being actuated to controloperation of the slide elevate motor 64 to elevate the slide from theprojection position to the upward slide tray position.

When the slide elevate mechanism 68 reaches the predetermined up-limitposition, the up-limit switch 140 is actuated and a low going transitionsignal is supplied on line 72a to the gate 232 of the elevate switchdebounce stage 116. The transition on line 72a latches the arrangementof gates 232 and 234 and a pulse signal is supplied at output 148through the capacitor 238. A pulse signal is also transmitted throughthe OR gate 242 to the common switch transition output line 144. A pulseon the signal line 144 is coupled through the gate 194 to reset theelevate drive latch 208 and thus terminate operation of the slideelevate motor 64 through the elevate tray interlock gate 114 of theelevate motor drive amplifier 60.

The pulse on the signal line 148 is coupled to the gate 270 of the traydrive latch stage 120 whereupon the latch is set to the tray drive modewith a high output at the control signal output 150. With two high levelinputs to the AND gate 174 of the tray motor direction mode controlstage 118, the gate 174 is enabled to provide at 80a a forward traydrive control signal to the tray motor drive amplifier stage 82. Thus,operation of the slide tray motor 88 is accomplished to move the slidetray from one slide position toward the next slide position.

In the case of a single slide advance control signal being applied tothe forward/reverse logic stage 50, the forced mode sustaining signal152 is a low level at this time. Thus, as the photodetectors 126 and 128begin to conduct as the aperture 132 nears alignment with the detectingstation of the source 124 and the photodetectors 126, 128, the currentsensed through the resistor 264 by the amplifier 258 results in a pulsesignal through gate 250 as a negative going transition signal to theinput of the gate 252. The output of the gate 252 provides a positivegoing pulse transition signal to the gate 268 of the tray drive latchthereby resetting the latch and terminating the force mode drive signalat 150. The time of transistion from the forced mode to the servo modein terms of aperture alignment relative to the photodetector at thedetecting station is varied by the control apparatus 10 as a function offrictional tray drive loading as will be explained in more detailhereinafter.

Thus, the forward drive signal 170 from the forward/reverse logic stage50 is inhibited from passing through the gate 174 since the second inputat 150 to the gate 174 is a low level.

Operation of the control apparatus 10 at this point terminates theforced mode of operation and enters the servo mode of operation underthe control of the photodetectors 126 and 128. Thus, the tray motordrive amplifier 274 is controlled in accordance with the servo feedbacksignals 95a and 95b from the photodetectors 126 and 128. If the tray isbeing moved in the forward direction, the aperture 132 first approachesthe forward photodetector 128 and thus conduction of the forwardphotodetector 128 initially occurs. Then as the aperture 132 movesthrough the center point of the detection station as measured by theline drawn between the center of the source 124 and the center of thephotodetector 126 and 128, conduction of both photodetectors 126, 128 isapproximately equal. Next, as the tray tends to overshoot past thecenter aligned position of the aperture at the detection station, thereverse photodetector 126 begins to conduct at a higher level than theforward photodetector 128 since the aperture is more nearly aligned withthe reverse photodetector 126 and a greater amount of light from thesource 124 impinges upon the reverse photodetector 126.

Thus, the differential outputs of the photodetectors 126 and 128 at 94band 94a, respectively, control operation in a closed loop fashion todrive the amplifier 274 and operate the motor 88. With higher conductionin the reverse detector 126, by means of signal 94b, the polarity ofoutput drive from the amplifier 274 at 86 reverses the motor direction.Thus, the tray is stopped with the aperture 132 aligned with thedetection station and with the slide aligned with the slide elevatemechanism 68; the center of the aperture 132 being aligned with the linedrawn between the midpoint of the photodetectors 126, 128 and the centerof the source 124. Tray motion is sensed by the amplifier 336 of thetray drive motion sensing stage 96 in response to the voltages of theservo mode operation at the output 86 to the motor 88.

In response to the control pulses at the output of the amplifier 336,the integrator formed by resistor 334 and capacitor 338 integrates theoutput of the amplifier 336 to set the latch formed by gates 330 and 332and provide a positive going transition at 98. The positive goingtransition at 98 is coupled through the capacitor 192 as a positivegoing pulse signal through the gate 186 to again set the elevate drivelatch 112.

Thus, the elevate enable latch signal 138 along with the high level onthe elevate enable line 84 provide a high output through theelevate/tray interlock gate 114 to provide operation of the slideelevate motor 64 whereupon the slide elevate mechanism 68 transfers theslide aligned at the slide change projection station from the trayposition down to the projection position.

When the slide elevate mechanism 68 moves the slide to the projectionposition, the down-limit switch 142 is actuated to provide a lowtransition at signal line 72b to the gate 234. The gate 234 inverts thenegative going transition to a positive going transition at its output.The positive going transition at the output of the gate 234 results in apulse being generated to the input of the gate 242 by means of thecapacitor 244. The positive going pulse at the output of the gate 242 atswitch transition signal line 144 is coupled through the gate 194 of theelevate set reset gating stage 110 to the reset line 146 of the elevatedrive latch 112 to reset the latch to the elevate disable mode.

Thus, operation of the slide elevate motor 64 is terminated with theslide in the downward projection position. The control apparatus 10 isthen in a stable mode of operation in an idle state awaiting the nextinstruction for slide advance or reverse for a single slide or forinstruction in either the rapid search mode or random access mode.

For the single slide advance situation, the signal at 52a is a shortdurational high transition signal. Correspondingly, the forced modesustaining signal 152 is also a short durational signal. Thus, at thetime of transition at the end of the elevate slide mode to return theslide from the projection position up to the slide tray position andbefore the initiation of the forced mode of tray movement, it isnecessary to temporarily inhibit servo mode operation. Transition toservo mode operation at this point would maintain the tray in thepresent slide tray position.

For this purpose and at the transition from the slide elevate mode tothe forced tray drive mode, the tray output drive signal 150 from thetray drive latch 120 through the capacitor 263 and the diode 261provides a temporary servo inhibit control signal to the noninvertingreference input of the amplifier 258. The temporary high level input tothe noninverting input of the amplifier 258 ensures a steady stateoutput of the amplifier 258. Thus, the amplifier 258 is temporarilyinhibited from responding to any changes in signal level at theinverting input that might result from noise or changes in thephotodetector current drain as the tray begins to move in the forcedmode. After tray movement has begun and the previously aligned aperturemoves away from the vicinity of the photodetectors, the temporaryinhibit signal is no longer necessary and normal circuit operationresumes as described hereinbefore.

Consider now the situation where a continued high level signal at any ofthe inputs 14a, 14b, 26a or 26b is provided for either the rapid searchor random access mode to move more than one slide position. Thecontinued high signal at 52a or 52b through the gate 182 provides acontinued forced mode sustaining signal at 152. With a high signal at152 to the gate 252, the gate 252 will not respond to the pulse signalat the output of the gate 250 derived from the amplifier 258 in responseto conduction of the photodetectors as the tray moves the apertures pastthe photodetectors from slide position to slide position. Thus, anegative going transition will not be passed through the gate 252 andthe output at 158 will remain at a low level to the gate 268.

Thus, the tray drive mode select latch 120 will remain in the forcedtray drive mode with the signal 150 being continually supplied as longas one of the drive signals 52a or 52b remains in the high state. Thehigh tray drive signal 150 disables the servo mode signals from thephotodetectors in the tray motor drive stage 82 through the transistor178.

Thus, for random access or rapid search mode, after the elevate sequenceis accomplished to elevate the slide from the projection position to theslide tray position, the slide tray is rotated to the desired slideposition before the drive signal 52a or 52b is terminated and beforeservo mode operation begins to accurately stop the tray at the desiredposition.

Considering now the operation of the control apparatus to vary the pointof transition from the forced mode to the servo mode as a function offrictional tray drive loading, the control output 155 of the tray motordrive current sensing stage 102 provides a varying reference signal atthe inverting input of the amplifier 258 of the tray reset gating stage122 as a function of the sensed current of tray drive motor 88.

As the current of the tray drive motor increases, the amplifier 320 andthe transistor 324 are effective to vary the current through theresistor 264 to result in an increased voltage level at the invertinginput of the amplifier 258. Thus, the higher the frictional loading onthe tray drive motor 88, the higher the reference level at the invertinginput of the amplifier 258.

The point of transition from the forced mode to the servo mode isdefined by the voltage level at the inverting input of the amplifier 258dropping below the fixed reference level at the noninverting input.

In the situation where light frictional loading is present, FIG. 15, thecontrol signal at 155 is essentially inoperative and the point oftransition to servo mode operation is governed predominantly by thecurrent sourced through the resistor 264 to the photodetectors 126,128through the line 156. Thus, as the aperture approaches the firstphotodetector and the photodetector begins to conduct, the transitionfrom the forced mode to the servo mode occurs before the aperturereaches the aligned position centrally between the photodetectors 126,128. This is desirable in light frictional loading situations, since thetray will tend to overshoot the center aligned position and the drivingforces in the servo mode are sufficient to control movement of the slidetray past the transition position.

In the case of higher frictional loading, the point of transition fromthe forced to the servo mode should be nearer the center alignedaperture position between the photodetectors at the detection stationsince the inertia of the tray may not be great enough under highfriction, slower drive conditions to allow the tray to move past theearlier transition position to the center position. Further, in somecircumstances of extremely high frictional loading, the servo driveforces alone may not be adequate to move the tray to the center alignedposition. This situation is encountered when the slide tray is deformed.

Thus, in high frictional loading situations, the control signal 155raises the normal bias level at the inverting input of the amplifier 258such that a larger conduction current is required by one photodetectorto bring the inverting input below the noninverting input. This resultsin a transition from the forced mode to the servo mode corresponding toa slide tray position with the aperture being nearer the central alignedposition at the detection station.

In order to ensure transition from the forced mode to the servo mode insituations of extremely high frictional loading on the tray drive motor88, FIG. 16, the control output 157 of the aperture center detector 123is active at the center aligned aperture position. The control output157 at the center aligned aperture position provides an increased levelat the noninverting input of the amplifier 258 at the time of centeraperture alignment. Thus, for high frictional loading situations, thisensures that the level at the inverting input will be below thereference level at the noninverting input to provide the transition fromthe forced mode to the servo mode. Of course, the control output 157would be necessary only in situations of extremely high frictionalloading on the slide tray drive motor.

Considering operation of the tray motor drive 82 and specificallyelectronic braking action performed during the forced mode operation, asthe amplifier 274 provides a drive signal to the push-pull transistors282, 284 to provide the motor drive output at 86, the capacitor 292 inthe feedback circuit of the amplifier 274 is appropriately charged. Forexample, if the control apparatus 10 conditions the tray motor drivestage 82 to the forced forward drive mode, the capacitor 292 will becomepositively charged to a level dependent upon the output drive controlvoltage of the amplifier 274.

As the forced mode of operation is terminated and the servo mode ofoperation begins, the forced forward mode drive signal 80a Iis removedand the servo feedback signals 95a, 95b control servo mode operation ofthe amplifier 274 to control operation of the motor 88. Upon thetermination of the forced mode, the stored charge on the capacitor 292provides a braking signal at the inverting input of the amplifier 274 toprovide a control voltage at the output of the amplifier 274 to brakeoperation of the motor 88 by the provision of a brake voltage levelopposite in sign to the control voltage during forced mode operation.

For example, after the forced forward mode has been terminated, anegative control voltage output of amplifier 274 is obtained and thepush-pull transistors 282, 284 provide a braking signal at 86 to themotor 88.

In response to the dynamic operating characteristics of the motor 88 thebraking action proportionally increases with the speed of the motor andproportionally decreases with the load on the motor. This isaccomplished in response to the drive voltage level at 86 and the RCtime constant provided by resistor 290 and capacitor 292. For example,if the motor is heavily loaded, the control voltage 86 tends to drop andthen the charge on the capacitor 292 also drops. When the motor 88 isoperating at high speeds in response to a control voltage at 86 for arelatively long time duration in the rapid search mode or random accessmode, the capacitor 292 receives a higher charge and thus provides ahigher degree of braking.

Further in the forced reverse mode of operation, the capacitor 292 alsostores a negative voltage for application to the amplifer 274 to providebraking operation by applying a forward drive signal at the output ofthe amplifier 274. Similarly, the elevate motor drive stage 60 alsoprovides electronic braking action of the elevate slide motor 64 throughthe provision of the capacitor 230.

Referring now to FIG. 3 and considering now a specific embodiment of thedigital filter 36 of FIG. 1 utilized in the alternate embodiment withouta CPU controller 24, the digital filter 36 responds to the 1 KH_(z)signal sine wave and encoded tape advance signals at the audio input 38to provide the advance control signal 12. In a specific arrangementcompatible with recognized standards, the encoded advance bursts arerecorded as 1000 Hz. signals of predetermined time duration on theprogram cassette tape 44 with a burst being recorded where slide advanceis desired during the program tape.

The equalized preamp stage 350 amplifies the input signal from the tapehead 40 and provides the output 352 to the digital filter as discussedhereinbefore.

The digital filter 36 includes a level comparator stage 354 having aninput connected to the output 38 of the equalized preamp stage 350. Thelevel comparator stage 354 provides an output at 356 when the signal at38 exceeds a predetermined peak amplitude. The output 356 of the levelcomparator stage 354 is connected to a logic interface stage 358 thatprovides an output at 360 as a negative going logic level pulse inresponse to each positive going crossover of the signal at 356.

A charge pump stage 362 of the digital filter 36 includes a reset input364 supplied from an output of the limit gating stage 366. The chargepump stage 362 also includes trigger inputs 368 and 370. The charge pumpstage 362 includes an output 372 connected to drive anintegrator/comparator stage 374. The output of the integrator/comparatorstage 374 provides the advance control signal 12. The output 372 of thecharge pump stage 362 is averaged by the integrator/comparator stage 374with signal frequencies in the acceptance band of the digital filter 36resulting in a high enough level to trigger the integrator/comparatorstage 374. The output 12 is normally near the +12 V supply voltage andwhen the integrator/comparator stage 374 is triggered, the output 12drops to a level near the -12 V supply. An inverter stage 376 providesthe trigger signals 368, 370 in response to the trigger signal output378 of the limit gating stage 366.

The limit gating stage 366 also includes a trigger output signal 380that is active in response to negative going signal crossovers at theinput 360 to the limit gating stage 366. The trigger signal 380 isconnected as a trigger input to a delay monostable stage 382. Whentriggered, the delay monostable stage 382 generates an output at 384having a period equal to the period of the upper frequency limit of theacceptance band of the encoded tone burst. The output 384 of the delaymonostable stage 382 is connected as a trigger input to a windowmonostable stage 386. The window monostable stage 386 is triggered bythe trailing edge of the output 384 of the delay monostable stage 382.The window monostable stage 386 includes time enabled control outputs388, 390 connected to control the limit gating stage 366. The windowmonostable stage 386 also includes a reset input 392 connected to thetrigger output 378 of the limit gating stage 366 through a capacitor394.

In operation, during the enabled period of the window monostable stage386, the limit gating stage 366 includes a two-input NOR gate 396 thatis enabled by the control line 388. Thus, if the input at 360 isnegative going during this enabled period, a pulse will be passedthrough gate 396 to the trigger input 368, 370 of the charge pump stage362 through the inverter stage 376. Thus, the charge pump stage 362 isretriggered in this manner.

If the signal at 360 is of different frequency, the pulse generatedduring the negative going portion of the signal will be gated through asecond gate 348 of the limit gating stage 366 and connected to the resetinput 364 of the charge pump stage 362 and thus reset the charge pump.

The equalized preamp stage 350 includes a burst defeat switcharrangement 400. The burst defeat switch 400 in the position illustratedin FIG. 3 connects the amplified signal at 38 in the equalized preampstage 350 to the output 38 for processing by the level comparator stage354 of the digital filter 36. In a second operative position, the burstdefeat switch arrangement 400 disconnects the signal 352 from the output38 to disable operation of the digital filter 36. The burst defeatswitch position is utilized in a situation where the projectionapparatus is to be made nonresponsive to the burst encoded signals onthe tape 44. Further, in projection apparatus utilizing a CPU controller24, the burst defeat switch 400 in the second position disables theinput 25a to the CPU controller 24 by disconnecting the signal 352 fromthe output 25a.

An additional signal input 402 is provided at the output 352 of theequalized preamp stage 350 for purposes of obtaining an advance signal12 from the digital filter 36 for slide advance operation duringgeneration of program advance signals when recording a program tape 44in projection apparatus not utilizing a CPU controller 24. Thus, thecircuitry of the projection apparatus for encoding burst signals (notshown) is utilized to produce input signals at 402 to provide theadvance signal 12 by means of the digital filter 36 and to advance theslide tray through operation of the control apparatus 10 duringrecording of the program. A defeat signal 403 is connected to disable aFET gate 405 of the preamp stage 350 during the encoding of burstsignals thereby disabling the output of the preamp stage 350 at 352.

Referring now to FIGS. 5, 6, 7 and 8, the slide tray drive and turntablearrangement 90 and the tray position sensing arrangement 92 areillustrated in operative relationship. The turntable 412 carries thecircumferential coded aperture ring 130 shown in more detail in FIGS. 7and 8. The slide tray position sensing arrangement 92 is slidablycarried by the housing 414 of the projector apparatus. The turntable 412is carried by the housing 414 for rotary movement relative thereto. Agear ring 416 is integrally provided on the turntable 412 for engagementby a drive gear (not shown) driven by the slide tray motor 88. A slidetray 410 positioned atop the projection apparatus includes aregistration notch 417 (FIG. 6) formed in the outer lip portion 418. Theregistration notch 417 interfits with a cooperating nose portion 419 ofthe turntable 412 for driving of the slide tray 410 by the turntable 412and to provide proper registration of slide tray position with theturntable. Since the turntable 412 and the tray position sensingarrangement 92 provide only incremental slide position information, azero position registration switch (not shown) is provided adjacent anactuating portion of the turntable 412 to provide zero absolute startingposition information to the control apparatus 10 and the CPU controller24.

The turntable 412 with the attached aperture ring 130 provides acircumferential space or cavity 420 (FIG. 8). The position sensingarrangement 92 includes a light pipe 422 (FIGS. 5 and 6) that cooperateswith the light source 124 and extends into the cavity 420 for directinglight from the source 124 onto the aperture ring 130. The photodetectors126, 128 are mounted in the position sensing arrangement 92 in a commondetector module 424 immediately below the aperture ring 130.

The aperture ring 130 includes a first circumferential array 426 ofapertures 132 including 81 apertures appropriately and equally spaced tocorrespond to the 81 positions of an 80 slide tray 410. The aperturering also includes a second circumferential array 428 of apertures 132including 141 apertures appropriately and equally spaced to correspondto the 141 positions of a 140 slide tray 430 (FIG. 9). With the 80 slidetray 410 in position as shown in FIGS. 5 and 6, the first array 426 ofapertures 132 is directly aligned over the photodetectors 126, 128 asthe slide tray 410 and the turntable 412 are rotated.

In a specific embodiment the photodetectors 126, 128 are implemented bychips that are each 0.050 by 0.165 inches arranged with the 0.165dimensions along the circumferential path of travel of the aperturearray 426. The detector module 424 provides a 0.020 inch space betweenthe adjacent chips. Further, the apertures 132 are 0.070 by 0.070 inchformed in a stainless steel aperture ring 130.

Referring now to FIG. 9, a commercially available 140 slide tray 430conventionally includes a downwardly extending portion 432 provided as aportion of a tray release mechanism. The movable sensing arrangement 92includes a spring biased cam actuator 434 that is actuated by theextending portion 432. Upon downward movement of the cam actuator 434,the cam actuator operates a cam surface 436 of a spring biased platform438 carrying the light source 124, the detector module 424 and the lightpipe 422 of the position sensing arrangement 92. Thus, the movableplatform 438 is positioned to the right in FIG. 9 into the 140 slidetray sensing position in response to the operation of the cam actuator434 by the extending portion 432.

The position sensing arrangement 92 in the 140 slide tray sensingposition of FIG. 9 accurately aligns the photodetectors 126, 128 withthe path of travel of the aperture array 428. Thus, the photodetectors126, 128 are appropriately positioned to cooperate with the apertures132 of the 141 aperture array 428 to provide feedback signals to thecontrol apparatus 10 for 140 slide tray position sensing and servooperation as discussed hereinbefore.

The movable platform 438 of the position sensing arrangement 92 isnormally biased to the 80 slide tray sensing position by means of aspring 440 connected between an extending hook portion 442 of theplatform 438 and an extending hook portion 444 of a U-shaped channelhousing generally referred to at 446, 448 and mounted to the housing414. The platform 438 is slidably mounted for movement within theU-shaped channel housing 446, 448. The cam actuator 434 is formed withan aperture to allow receiving of the cam surface 436 of the platform438. The lower portion of the cam actuator 434 includes an extendinghook portion 450. A spring 452 is connected between the hook portion 450and an extending hook portion 454 of the U-shaped channel housing 446,448 so as to bias the cam actuator 434 to the upward position. The camactuator 434 is slidably mounted within the U-shaped channel housing446, 448 between the respective upper and lower positions of FIGS. 6 and9 within the channel formed by housing portions 456, 458.

A switch contact arrangement 460 provides a closed circuit to thecontrol apparatus 10 when the slide tray position sensing arrangement isin the 140 slide tray position and an open circuit when the sensingarrangement is in the 80 slide tray position. The switch contactarrangement 460 includes a first fixed contact 462 carried by the lowerhousing portion 458. A movable spring contact arm 464 is carried by themovable platform 438. The spring contact arm 464 is arranged to contactthe fixed contact 462 whenever the platform 438 is moved to the 140slide tray position as shown in FIG. 9. The fixed contact 462 and thespring contact arm 464 are respectively connected to output signalconnections 466, 468 for use by the CPU controller 24 at 558.

The slide tray position sensing arrangement 92 in another arrangementincludes a single photodetector and two alternately energized lightsources as disclosed in U.S. application Ser. No. 336,469 filed by R.Starai on Dec. 31, 1981, now U.S. Pat. No. 4,422,026, to which referencemay be made for a more detailed discussion. Reference may also be madeto U.S. application Ser. No. 336,523 filed by R. Parker et al. on Dec.31, 1981, now U.S. Pat. No. 4,432,618, for a further discussion ofalternate slide tray position sensing arrangements.

Considering now the details of the encoding and the decoding of theslide address signals by the CPU controller 24 and referring to FIG. 11,the encoded slide address signals are each in a burst format series ofelectronic pulses of predetermined periods and pulse widths in apredetermined coding format. The encoded slide address signals areprovided as a data word in the burst format by pulse width modulationcoding techniques. A typical encoded signal as depicted in FIG. 11 isdefined by a burst format including in sequential order 180 clock pulsesof one millisecond period referred to at 500, followed by two zeropulses referred to at 502, followed by eight data bits as a data wordreferred to at 504, followed by two zero pulses referred to at 506followed by 255 clock pulses referred to at 508.

In a preferred embodiment, the entire period of one clock pulse isnominally 1,000 microseconds with a range of 900 to 1,100 microseconds.For a zero pulse, the period is nominally 1,500 microseconds with arange of 1,350 to 1,700 microseconds. The eight data bits in the dataword portion 504 includes predetermined combinations of zero pulses andone pulses. For a one pulse, the period is nominally 750 microsecondswith a range of 650 to 850 microseconds. The one or high level(approximately 5 volt) portion of each of the pulses in the burst formatis always a nominal 500 microseconds.

The data word portion 504 of each burst format represents a digitalslide address code of eight data bits in a binary coded format. Since140 slide positions is the largest tray size conventionally provided forslide projectors, in the preferred embodiment binary numbers or datawords corresponding to zero through 140 are encoded and decoded torepresent the respective 140 slide positions. For example, the burstformat portion 504 of FIG. 11 depicts the binary number or data word01100111 corresponding to slide position 103. Since eight data bits arerequired to represent the 140 slide positions and an 8 bit binary numberis capable of representing 256 different combinations, the data bits arealso available to provide other control information such as mode andfunction control of the slide projector apparatus in addition to slideaddress identification.

To record a program cassette tape 44, the CPU controller 24 is effectiveto generate appropriate burst formats with corresponding slide addresssignals to the tape head 40 along with a bias oscillator signal toappropriately record desired burst formats on the tape 44 defining aprogram tape. In order to record the encoded slide address signals andthe burst formats, the slide projector apparatus is conditioned to therecord mode by inputting a proper record enable signal on the keyboard28; for example, a code of 213 followed by actuation of the "EXECUTE"key.

The playback control of the cassette tape controls 42 is then actuated.At this point an operator may record appropriate burst formats bymanipulation of the appropriate keys on the keyboard 28 defining validslide position numbers. After each complete slide address has beenentered including, for example, one to three digits, the operatoractuates the "Record/Reverse" key. In this manner, the appropriate burstformats including respective data words corresponding to slide positionscan be recorded on a random access program tape. A typical random accessprogram, for example, might include slide position address numbers 1, 2,10, 50, 75, 32 and 5 with each of the slide position addresses beingencoded as a separate burst format on the program tape.

The CPU controller 24 also provides for decoding of a recorded programcassette tape 44 by decoding the burst format signals and the data wordsin the burst format portions 504 to appropriately control the apparatus10 to move the slide tray turntable 90 to the appropriate slidepositions in accordance with the synchronized narrative track of thetape program 44. It should be noted that the CPU controller 24 decodesrecorded program tapes whether the program tape was recorded via thekeyboard 28 of the slide projector apparatus or if the program tape wasrecorded by means of encoding circuitry separate from and independent ofthe slide projector to record the appropriate burst format signals withencoded slide address signals as exemplified by FIG. 11.

Turning now to a discussion of the detailed operation of the CPUcontroller 24 for encoding, recording and decoding burst format signalsfor the random access operation of the slide projection apparatus andreferring now to FIGS. 12, 13 and 14, the encoding of the burst formatsignals will be explained in conjunction with the flow diagram of FIG.12 and the decoding of the burst format signals will be discussed inconnection with the flow diagram of FIG. 13. FIG. 14 illustrates apreferred embodiment of the CPU controller 24 and associated controlcircuitry as connected to the keyboard 28.

Referring now to FIG. 14 and considering the CPU controller 24, in apreferred embodiment the CPU controller 24 is implemented by a type 3870microprocessor chip available for example from Mostek or Fairchild. Thekeyboard 28 is sensed for entry inputs in accordance with the monitoringinput/output lines of the microprocessor 24 referred to generally at512.

The data input 25a from the audio input 38 from the tape transducinghead 40 is provided to the microprocessor at data-in input 514 throughinput circuitry 516. The input circuitry 516 provides a square waveinput at 514 and 528 from the generally sine wave audio input at 25afrom the tape head 40. The microprocessor 24 provides the data-outsignal 25b for connection to the tape transducing head 40 via theconventional recording circuitry (not shown) of the cassette arrangementof FIG. 1. Suitable conventional playback and record audio amplifiercircuitry is provided in the cassette tape arrangement between the tapehead 40 and the data lines 25a, 25b.

The microprocessor 24 provides a forward/reverse signal at 518 and a GOsignal at 519 that are connected through output control circuitry 520 toprovide the forward logic output 14a and the reverse logic output 14b.The GO signal 519 is connected to a first input of each of two AND gates521 and 523. The forward/reverse signal 518 is connected to the secondinput of gate 521 and through an inverter gate 525 to the second inputof the gate 523.

The data-in input 514 is connected to one input of a two-input AND gate522. The second input of the gate 522 is connected to a data-in inhibitline 524 from the microprocessor 24. The output of the gate 522 isconnected to an external interrupt data input 528 of the microprocessor24.

The projection apparatus of the present invention in the preferredembodiment includes a display referred to generally at 530. The display530 includes three separate display digits representing hundreds, tensand units with each display digit being formed by a seven-segment array.The microprocessor 24 controls the display 530 to present slide addresspositions and other functional mode indications. For example, whenslides are being selected by random access operation from the keyboard28, the display 530 presents the slide presently being selected andprojected. Further, during random access operation from a program tape44, the number of the decoded slide is presented upon decoding. Duringthe encoding of a program tape 44, the slide address numbers beingencoded on the program tape and presented by the projection apparatusare also displayed.

The microprocessor 24 includes BCD display driver output signals 532,534, 536 and 538 that are connected to a decoder driver stage 540. Thedecoder driver stage 540 provides segment drive output signals referredto generally at 542 including a segment driver output line to each ofthe seven segments of each display digit. The microprocessor 24 controlsthe three digits of the display in time-shared fashion. Each of thedisplay segments also includes a decimal point display element utilizedto provide indication of the pause mode operation of the tape player.The decimal points are controlled by an output line 544 connected to atransistor stage 546 driven from a pause output signal 548 of themicroprocessor 24.

The pause output signal 548 is also connected through pause outputcontrol circuitry 550 to provide a pause output control line 552connected to the cassette tape controls 42 for controlling the pausemode of the tape 44 in accordance with the timing signals from themicroprocessor 24.

In order to sense the playback state of the cassette controller 42, themicroprocessor 24 includes a playback input 556 provided at the outputof a two-input NAND gate 555. A first input 554 of the NAND gate 555 isconnected through a resistor network to a motor sense input 557. Themotor sense input 557 is a high level signal when the cassette drivemotor is operational. The second input 568 of the NAND gate 555 isconnected to a mute input 570 through a transistor inverter gate 572.The mute input 570 is a low level signal when the cassette audiocircuitry is operational and a high level when the audio is muted.

Thus, the playback input signal 556 is useful to indicate to themicroprocessor 24 whether or not the cassette controls 42 and thecassette tape unit are in the playback mode. The microprocessor utilizesthe playback input signal 556 to disable the keyboard 28 while thecassette program tape 44 is being played and also for determining thatthe cassette is operational before the recording of encoded burst formatsignals when recording a tape program.

An 80/140 switch input 558 is provided to the microprocessor 24 from theslide tray position switch 460 of the slide tray position sensingarrangement 92 to provide data to the microprocessor 24 indicatingwhether an 80 position slide tray or a 140 slide position tray is inposition on the projection apparatus. A slide zero position switch input560 is connected to the microprocessor 24 to provide an indication tothe microprocessor 24 when the slide tray and turntable are in the zeroor home position since no absolute position information is availablefrom the tray position sensing arrangement 92. The slide count input 100from the control apparatus 10 is connected through an inverter shapinggate to the microprocessor 24 at count input 562. A motion or travelinginput 564 is connected through an inverter shaping gate to the travelingmotion input 566 of the microprocessor 24. The traveling motion input564 may be suitably provided from the control apparatus 10 at output 98of the motion sensing stage 96.

The microprocessor 24 generates a high level signal at a record enableoutput 574 when the proper record mode entries have been made on thekeyboard 28 (e.g. 213), the EXECUTE key has been actuated and theplayback control of the cassette tape recorder has been actuated. Ifthis sequence has not been achieved, the record enable output 574 willbe a low level. The record enable output 574 is coupled through aninverter gate 575 and a transistor stage 576 to a record bias oscillatorenable line 578 connected to the cassette tape unit to actuate the biasoscillator.

In operation, the microprocessor upon power initialization controls theslide tray turntable 90 to move the slide tray to the zero or homeposition before a random access program is either recorded or presented.The microprocessor 24 through the forward/reverse output 518 causes theslide tray to continue movement until the slide zero position switchinput 560 indicates that the zero position has been reached.

Turning now to a detailed discussion of the operation of themicroprocessor 24 to encode and record tone burst formats for therecording of a random access program tape and referring now to FIG. 12,the program flow for encoding tone bursts is conveniently entered atfunction block 600 representing the program time where the program flowwaits for a timer interrupt. A timer interrupt is an internallygenerated microprocessor signal that occurs after a predetermined amountof time that is selectable in accordance with the programming of themicroprocessor. For example, at this stage of the program, timerinterrupts are occurring every 6.9 milliseconds.

After a timer interrupt occurs represented by function block 602 in theprogram flow, the microprocessor checks if the cassette tape unit is inthe playback mode as sensed from the playback input at 556. Thedetermination is made in decision block 604. If the determination isYES, the program flow proceeds to a decision block 606 to determine thestatus of the record mode register. The record mode register is not zeroif the record/reverse key has been depressed and a tone burst is in theprocess of being recorded.

If the status of the record mode register is zero, then thedetermination in decision block 606 is YES and the program flow proceedsto decision block 608 for the determination IS TRAY MOVEMENT STATUSREGISTER EQUAL TO ZERO? The status of the tray movement register is notzero if the tray is rotating as sensed at the tray movement input 566.If the tray is stopped the tray movement status register is zero and thedetermination in the decision block 608 is YES.

If the determination in decision block 608 is YES, the program flowproceeds to decision block 610 where the determination is made IS TRAYSTOP TIME OUT REGISTER EQUAL TO ZERO? The tray stop time out register isset to a first value represented by "a" after the slide tray isconditioned to stop, to a value "b" after the tape cassette unit isconditioned to pause, or to a value "c" after the tape cassette recorderis told to unpause. The values a, b and c are representative of variouspredetermined numbers that are utilized as multipliers of the timerinterrupt interval. For example when the register is set to the valuerepresented by a, a programmed time is provided to allow for the slideelevate mechanism 68 to finish cycling. Correspondingly, when theregister is set to the value b, the program time is provided to allowthe cassette recorder time to stop for the pause mode. Further after anunpause indication, the value represented by c allows program time toallow the cassette recorder to start. The various time intervals a, band c provide enough time for these functions to be accomplished beforekeyboard entries are recognized as valid.

If the tray stop time out register is zero, then the determination indecision block 610 is YES and the program flow proceeds to a decisionblock 612 where the determination is made IS UNIT IN RECORD ENABLE MODEOR IN PAUSE MODE? The term unit is used to represent the CPU controller24 and the associated projection apparatus. The determination in thedecision block 612 is YES if the record enable output signal 574 is at ahigh level corresponding to the proper sequence of entries on thekeyboard and the cassette controls are in the playback mode or if thepause output is high.

With the determination being YES in the decision block 612, the programflow proceeds to a function block 614 representing the program flow GOTO KEYBOARD DECODE. The program flow as represented by the functionblock 614 then goes through the keyboard decode and display strobeprogram with the keyboard 28 being checked for key depressions and theappropriate corresponding control of the display 530. The keyboarddecode program flow continues from function block 614 to a decisionblock 616 where the determination is made IS THE UNIT IN PLAYBACK MODE?If the unit is not in the playback mode, the determination is NO and theprogram flow proceeds to the function block CONTINUE KEYBOARD DECODE618. If the determination in decision block 616 is YES, the program flowproceeds to determination block 620 where determination is made IS UNITIN RECORD ENABLE MODE? If the determination is NO, the program flowproceeds to the continue keyboard decode program at 618. If thedetermination in block 620 is YES, the program flow proceeds to decisionblock 622 where the determination is made IS RECORD KEY DEPRESSED?

The playback mode and record enable modes are checked after a key isdepressed because in the playback mode, only the pause key depression isallowed while in the record enable mode all keys except forward one andreverse are allowed as valid entries.

If the operator desires to record a slide address signal, he depressesthe record/reverse key after having entered a digit or digits by thedepression of appropriate keys in the keyboard 28. The program flow thenproceeds into the record routine. This corresponds to a YESdetermination in the decision block 622 and the program flow proceeds tothe function block 624 where the function is performed BLANK DISPLAY ANDPUT "1" IN RECORD MODE AND TRAY MOVEMENT STATUS REGISTERS. The "1" putinto the record mode status register functions as a flag to indicatethat the record key has been depressed.

Next, the program flow proceeds from the function block 624 to thefunction block 626 GO TO TRAY MOVEMENT PART OF PROGRAM. The program flowproceeds in the tray movement program to a decision block 628 where adetermination is made HAS A VALID NUMBER BEEN ENTERED FROM KEYBOARD ORDECODED FROM TAPE? For example, an error indication would result indecision block 628 if the digits for 81 were entered or decoded and theslide tray was an 80 position tray. Thus, if the determination in thedecision block 628 is NO, the program flow would proceed to the functionblock 630 GO TO ERROR ROUTINE. If a valid number or digit has beenentered on the keyboard or decoded from the tape, the determination inthe decision block 628 is YES and the program flow proceeds to adecision block 632 where the determination is made IS RECORD MODE STATUSREGISTER EQUAL TO ONE? If the determination is NO, the program flowproceeds to the function block 634 representing the program flow tocontinue the tray movement portion of the program. If the determinationin the decision block 632 is YES, the program flow proceeds to afunction block 636 representing the loading of various registers withvalues necessary for the remainder of the record routine. The functionblock 638 also represents the setting up of the timer so that theinterval between internal interrupts is now 250 microseconds.

The program flow proceeds from the function block 638 back to thefunction block 600 to wait for the next timer interrupt. After the nexttimer interrupt the program again checks for the unit being in theplayback mode.

After the next timer interrupt occurs and proceeding now through theflow blocks 600, 602, 604 and 606, the determination in block 606 is nowNO since the record mode status register has been loaded to a one state.The program flow now proceeds from function block 606 to the functionblock 640 representing the generation of and sending out of a burst toneformat at the data output line 25b in 250 microsecond portions. The dataword that is sent out in the burst represented by the function block 640corresponds to the slide address number entered via the keyboard duringthe record function.

After the burst format as in FIG. 11 has been sent out to be recordedonto the cassette tape 44, the program flow proceeds to a decision block642 where the determination is made HAS LAST CLOCK PULSE BEEN SENT OUT?If the determination is NO, the program flow proceeds through the enableinterrupt function block and back through the program flow at functionblock 600 and repetitively through function block 640 until the entireburst tone format has been output. If the determination in decisionblock 642 is YES, the program flow proceeds to a function block 646 toset the record mode status register to a two state to represent that therecording is complete. The timer interrupt interval is then set back to6.9 milliseconds and the program flow proceeds to a function block 648representing the tray movement portion of the program.

During the tray movement program proceeding from function block 648, thetray movement status register is set back to zero so that themicroprocessor will be ready for further recording of additional slideaddress signals as burst formats. The function block 640 represents thevarious program functions required for the sending out of the burstformat including the format portions 500, 502, 504, 506 and 508. In oneembodiment, the various registers loaded for the record function infunction block 636 are utilized with appropriate incrementing anddecrementing from their loaded positions to output the 180 clock pulsesfor the burst format portion 500, the two zero pulses in the burstformat portion 502, the eight bit data word of burst format portion 504,the two zero pulses of burst format portion 506 and the 255 clock pulsesof burst format portion 508. The eight bit data word representing formatportion 504 is loaded into an appropriate register from the entries onthe keyboard during the record function.

Proceeding now in the program flow through the determination block 612,if the determination is NO, the program flow proceeds to the burstdecoding program routine of FIG. 13 as represented by the program flowmarker GO TO DECODE BURST ROUTINE, at reference A.

Referring now to FIG. 13 and considering a detailed discussion of theoperation of the microprocessor 24 for the decoding of tone formatbursts from the cassette tape 44, tone bursts may be decoded from thecassette tape 44 with the microprocessor 24 in the playback mode.Specifically, the tone burst signals transcribed from the cassette tapeby means of the transducing head 40 at 38 are coupled to the data input25a. The generally sine wave input at 25a is processed through the inputcircuit 516 to provide a square wave input at data-in input 514.Further, the data input at 514 when not inhibited by gate 522 is coupledto the external interrupt data input 528.

The program flow FIG. 13 proceeds from the reference marker A of thedecode routine to a decision block 652 where the determination is madeIS THE UNIT IN AUTO ADVANCE OR AUTO PAUSE MODE? If the determination isYES, the program flow proceeds to the GO TO KEYBOARD DECODE functionrepresented by the function block 654. If the determination in the block652 is NO indicating that the unit is in the playback mode, the programflow proceeds to a decision 656 where the data input 514 is sensed forthe presence of a "1" or high level (5 volt) input. This determinationis made after the occurrence of every timer interrupt. When the datainput line 514 is at a high or 5 volt level, the determination is YESand the program flow proceeds to function block 658 to increment thevalid pulse counter register by one.

The program flow then proceeds to a decision block 660 where thedetermination is made IS COUNTER REGISTER EQUAL TO FIVE? If thedetermination is NO and the counter register has not yet beenincremented to five, the program flow proceeds to the GO TO KEYBOARDDECODE function 654 until five pulses have been detected correspondingto the detection of a high level after five corresponding timerinterrupts. After a high level is detected with the pulse counterregister incremented to 5, the determination in block 660 is YES and theprogram flow proceeds to a function block 662 which represents theremoval of an inhibit at data inhibit output 524 and the setting of thecounter register back to zero. Further, various registers are also setup or loaded for the burst decode sequence. The burst input signal at514 is then routed to the external interrupt data input 528 fordecoding.

If the determination in decision block 656 is NO such that the voltageat the data input is a low, zero level, the program flow proceeds to afunction block 657 to set a 310 microsecond delay. After the 310microsecond delay the program flow proceeds through a decision block 659to see if the delay function has been performed 15 times. If the delayhas been performed 15 times, the program flow from the function block659 proceeds to the function block 654, GO TO KEYBOARD DECODE. If thedetermination in the decision block 659 is NO and the delay has beenperformed less than 15 times, the program flow proceeds from thedecision block 659 back to the decision block 656 to again interrogatethe data input voltage. This is done to insure that a 5 volt signal atthe data input will not be missed. This is especially important whendecoding 150 Hz. tones since these signals correspond to 6.667millisecond pulses which are very close to the timer interrupt intervalof 6.9 milliseconds. If only one check of the data-in input after eachtimer interrupt were relied upon, the 150 Hz. tone at 5 volt level mightnever be detected and thus the tone would not be decoded.

An external interrupt occurs upon every positive going burst transitionwhich results in the program entering the external interrupt serviceroutine. This routine measures the width of each pulse and decideswhether the pulse was a zero, a one, a clock pulse or a 150 Hz. pulse.The 150 Hz. pulse is utilized to denote a cue stop pulse from variousprogram tapes having different encoding formats which utilize a 1,000Hz. burst of predetermined duration for a one slide forward command anda 150 Hz. burst of predetermined time duration for a cue stop burstcommand.

In any case, when two zero pulses in succession are detected, themicroprocessor program flow determines that the next eight pulsesrepresent the data bits for decoding that represent a slide addresssignal. These eight decoded pulses or eight bits of information are putinto a data register and decoded with the program then performing thefunction specified that corresponds to the eight bits of decodedinformation.

If 192 clock pulses are detected before two zero pulses in succession,the microprocessor 24 determines that a one slide advance signal isbeing decoded from a program tape corresponding to a 1,000 Hz. toneburst of predetermined time duration instead of an encoded slide addresssignal. Correspondingly, if ten 150 Hz. pulses are detected before twozero pulses in succession, the microprocessor 24 directs the pause mode(cue stop) condition of the cassette recorder. If during the course of atone burst decode, an external interrupt does not occur within 31.2milliseconds of the previous external interrupt, the burst decodeprogram flow routine is aborted and the timer interrupts arereinitiated. This is done to prevent noise from causing the burstroutine to become hung-up.

Proceeding now with the discussion of the detailed program flow of FIG.13, the program flow from the function block 662 proceeds over the flowline 664 to a function block 666. At function block 666, after the timeris set up for 50 microsecond counts, the program flow proceeds to afunction block 668 to set up the internal microprocessor port 6 forexternal interrupts; (where port 6 corresponds to the internal port fortimer and interrupt control). This cancels the timer interrupt mode andenables the external interrupt mode as the program flow proceeds througha function block 670. Thus the internally generated microprocessorsignal will no longer reset the program counter to the timer interruptphase as in FIG. 12, program flow block 602. Instead, whenever anexternal interrupt occurs, the program counter of the microprocessor isset to a new location and sets up a 31.2 milliseoond time-out after theexternal interrupt is enabled.

The program flow proceeds from the function block 670 to a decisionblock 672 wherein the determination is made DOES THE EXTERNAL INTERRUPTOCCUR BEFORE 31.2 MILLISECONDS HAVE ELAPSED? If an external interruptdoes not occur within the 31.2 millisecond time-out, the determinationin decision block 672 is NO and the program flow proceeds to jump-out ofthe pre-burst decode routine to reenable the interrupt timer for 6.9millisecond intervals and proceeds back to the keyboard decode anddisplay routine as represented by the function blocks 674, 676, 678 and680. These functions are accomplished to account for the case wherenoise may have placed the microprocessor program into a pre-burst decoderoutine. Further, the time-out is chosen sufficiently long so that somepulses can be missed and not cause the program to jump to other programflow routine portions such as due to a poor recording or such.

If the determination in the decision block 672 is YES, with an externalinterrupt occurring before the time-out of 31.2 milliseconds, theprogram flow proceeds through a function block 682 representing theoccurrence of an external interrupt. The program then enters the burstdecode routine. At the program point of function block 682, severalother functions are also performed in accordance with a specificembodiment of the present invention. Specifically, the first externalinterrupt that occurs is ignored. This is done because by the time allthe pre-burst routine instructions have been executed the first pulsemay not be measured correctly. This is accomplished by setting aregister to zero with the occurrence of the first external interrupt andinterrogating the register to proceed in the program flow for the burstdecode routine only when the contents of the register is zerocorresponding to the second external interrupt.

The program flow upon the occurrence of the second interrupt proceeds toa function block 684 to read a timer that is set to, for example, 254units upon the occurrence of an external interrupt. The value of thetimer is read upon the occurrence of the next external interrupt withthe timer value being decremented by one count every 50 microseconds.Thus, the resultant value read in the timer in the function block 684 isan indication of the length of the pulse present at the externalinterrupt input 528. The decode program then proceeds to determinewhether the pulse was a clock pulse, a zero pulse, a one pulse, a 150Hz. pulse or none of these particular pulses, resulting in an errorpulse. The program flow proceeds to a decision block 686 to make thedetermination IS A VALID PULSE DECODED? If the pulse decoded is valid,the program flow proceeds to a decision block 688 to make thedetermination HAVE TWO ZERO PULSES IN SUCCESSION BEEN DECODED? If thedetermination in decision block 686 is NO, corresponding to an invalidpulse being detected, the program flow would proceed to a function block690 to place an inhibit on the data-in inhibit 524. After the functionblock 690, the program would proceed to a function block 692 to enter anerror program represented by the function GO TO ERROR.

Assuming that two zero pulses in succession have been decoded, thedetermination in the decision block 688 is YES and the program flowproceeds to a function block 694 representing the program flow to putthe decoded data bits occurring after the two zeros into the decodeddata holding register. The program flow proceeds from the function block694 to a function block 696 to increment the decoded data bit countingregister by one after each data bit is inputted to the decoded dataholding register to thus assemble the decoded data bits as an eight bitword.

If the determination in the decision block 688 is NO (i.e., two zeropulses in succession have not been decoded) the program flow proceeds toa decision block 698 to determine if a one KHz pulse had been decoded.If the determination is YES in block 698, the program flow proceeds to adecision block 700 where the determination is made IS THE CLOCK COUNTINGREGISTER EQUAL TO ZERO? A YES determination results in block 700 if aclock occurs before the two zero pulses in succession have been decoded.With this condition occurring and the clock counter register equal tozero, the program has effectively detected a 1,000 Hz. tone and theprogram proceeds from the YES decision path of the block 700 to afunction block 702 to the GO TO FORWARD ONE SLIDE routine in response toa decoded 1,000 Hz. tone. If 1 KHz. has been decoded but the clockcounting register has not been set to zero, then the NO decision flowpath from the block 700 proceeds to the function block 666 to set up thetimer for 50 microsecond counts.

If the program flow proceeds through decision block 698 and a 1 KHz.tone has not been decoded, the program flow proceeds to a decision block704 where a determination is made IS 150 Hz. DECODED? If a 150 Hz. tonehas not been decoded, the program flow proceeds to the function block690 to place an inhibit on the data inhibit at 524. This is followed bya jump to the error routine. If a 150 Hz. tone has been decoded, thenthe program flow proceeds from the decision block 704 to a decisionblock 706 where the 150 Hz. counting register is checked for a zero ornon-zero reading.

The 150 Hz. counting register which was set to a predetermined value atthe beginning of the decode routine is decremented by a one count uponeach occurrence of a 150 Hz. tone pulse. Thus, when the countingregister is decremented down to zero, a pause function has been decodedand the program flow proceeds to the GO TO PAUSE CASSETTE RECORDERROUTINE at function block 708.

If a 150 Hz. tone has been decoded but the counting register has notbeen decremented to zero, the program flow proceeds from the decisionblock 706 back to the function block 666 to set up the timer for 50microsecond counts and the external interrupt decoding routine follows.

Considering the program flow through the decision block 700, the clockcounting register for 1,000 Hz. tone pulses is set to a predeterminedvalue at the beginning of the decode routine and decremented upon eachoccurrence of a decoded 1 KHz. tone. Thus, when the clock countingregister equals zero, a move forward one slide function has beenproperly decoded and is implemented at 702. If a one or zero pulse asdefined in connection with FIG. 11 is decoded before the two zero pulsesin succession have been decoded, the occurrence of a one or zero pulseis ignored and the program stays in a burst decode routine. If a one orzero pulse is decoded after the two zero pulses in succession have beendecoded, then the corresponding one or zero pulse is respectivelydecoded as a one or zero data bit in the data word portion 504 of theburst format representing a slide address signal or a mode controlcommand.

Thus, after two zero pulses in succession have been decoded asdetermined by the decision block 688, the next eight pulses will be databits and each time a one or zero is decoded it is placed in the leastsignificant bit of the decoded data holding register and shifted left byone bit. At the same time, the decoded data bit counting register isincremented by one. When the decoded data bit counting register has beenincremented to eight, the first pulse decoded is the most singificantbit in the decoded data holding register while the last pulse decoded isin the least significant bit of the decoded data holding register. Thisis represented in the program flow by the function blocks 694 and 696with the program flow proceeding to decision block 710 where thedetermination is made IS DECODED DATA BIT COUNTER REGISTER EQUAL TOEIGHT?

If the determination is YES, and the decoded data bit counting registerhas been incremented to eight, the decoding of the data word is completeand the program flow proceeds to a decision block 712 where thedetermination is made IS THE NUMBER DECODED 213 THROUGH 255? In aspecific embodiment, the decoded data word or number being equal to anumber in the range 213 through 255 corresponds to a predetermined rangeof data words that are not assigned as either slide address signals ordecodable mode command representations and thus are invalid data words.

Thus, if the determination in block 712 is YES, the program flowproceeds to a GO TO ERROR function block 714. If the number decoded inthe decode routine is determined to be a valid number, i.e., either aslide address signal or proper mode control number, the decision inblock 712 is NO and the program flow proceeds through the functionblocks 716, 718, 720 and 722.

In the first function block 716, the inhibit on the data-in inhibitinput is reestablished. In the function block 718, the timer is set to6.9 milliseconds for the timer interrupt mode. The function block 716represents the establishing of a zero volt low level on the data inhibit524. The function block 720 sets up the internal port 6 for timerinterrupts. The function block 722 proceeds to a tray movement programportion to implement the appropriate tray movement in accordance withthe decoded data word. In addition, the program places a predeterminednumber in the tray stop time-out register such that clocks after thedata word has been decoded will be ignored and the program will notproceed to the decode routine. After the function specified by thedecoded data word is performed, the program is again ready to decodemore bursts if the unit is still in the proper decode mode.

As discussed hereinbefore, if the decoded data word is a valid slideaddress signal such as in the range of one to 140 (with a 140 positiontray), the tray is moved to the appropriate position in accordance withthe microprocessor program. The program determines the appropriatedirection of travel to move to the desired decoded position relative tothe present position of the tray before the data word is decoded. Themicroprocessor program stores the address of the current position in acounter and receives slide count data at input 100 to maintain a presentposition count for the program to determine when tray movement is to beterminated to arrive at the correct determination.

While there has been illustrated and described several embodiments ofthe present invention, it will be apparent that various changes andmodifications thereof will occur to those skilled in the art. It isintended in the appended claims to cover all such changes andmodifications as fall within the true spirit and scope of the presentinvention.

What is claimed as new and desired to be secured by Letters Patent ofthe U.S. is:
 1. Random access control apparatus for a slide projectorthat carries a slide tray and is responsive to predetermined encodedslide address signals in a first predetermined formatcomprising:manually operable means for entering slide address codes in asecond predetermined format, said manually operable means including aplurality of entry devices, each of said plurality of entry devicesrepresenting a respective one of the numerals 0 through 9, each of saidslide address codes being entered on said plurality of entry devices asnumerical codes representing a predetermined number of slide positionsin the range of 1 to n where n is greater than 10; a data transducinginput; control means responsive to predetermined encoded slide addresssignals in said first predetermined format at said data transducinginput for decoding said predetermined encoded slide address signals andfor generating slide tray movement control signals, said control meanscomprising manual random access means directly responsive to actuationof said entry devices to enter said slide address codes in said secondpredetermined format on said manually operable means for generating saidslide tray movement control signals, said manual random access meanscomprising means for sensing actuation of said entry devices; a datatransducing output; and transport means responsive to said slide traymovement control signals for controlling the position of a slide tray,said control means further comprising encoding means operative in aprogram recording mode and responsive to said slide address codesentered on said manually operable means for generating encoded slideaddress signals at said data transducing output, each of said encodedslide address signals corresponding to a respective slide position of aslide tray and being encoded as a predetermined combination of audiotone bursts defining said first predetermined format.
 2. The randomaccess control apparatus of claim 1 wherein each of said predeterminedencoded slide address signals represents a data word defined by apredetermined number of data bits.
 3. The random access controlapparatus of claim 2 wherein said data bits are encoded by pulse widthmodulation techniques.
 4. The random access control apparatus of claim 1further comprising tape transport and transducing means responsive to arecorded random access program tape for transducing from said recordedrandom access program tape said encoded slide address signals, said tapetransport and transducing means providing said encoded slide addresssignals at said data transducing input.
 5. The random access controlapparatus of claim 4 wherein said random access program tape comprisesat least two tracks and includes a plurality of said encoded slideaddress signals on a first of said tracks and narrative information on asecond of said tracks synchronized with said encoded slide addresssignals.
 6. The random access control apparatus of claim 4 furthercomprising means responsive to said encoding means for recording saidencoded slide address signals onto said random access program tape. 7.The random access control apparatus of claim 4 wherein each of saidslide address signals is encoded by said endoding means as a portion ofa predetermined burst format, said predetermined burst format includingin sequential order a predetermined plurality of pulses of a firstdistinctive type, at least two pulses of a second distinctive type, andsaid slide address signal.
 8. The random access control apparatus ofclaim 4 wherein said control means further comprises means responsive tosaid encoding means for generating said slide tray movement controlsignal required to cause said transport means to move said slide tray tothe position represented by said encoded slide address signals as eachof said slide address signals is encoded.
 9. The random access controlapparatus of claim 6 wherein said slide address signal is encoded by apredetermined number of pulses representing a binary number, said pulsesbeing of two different types corresponding to a one or a zerorespectively.
 10. The random access control apparatus of claim 1 whereinsaid control means further comprises means for determining the currentslide position of said slide tray and means responsive to said currentslide position determining means and said encoded slide address signalsfor determining the direction of minimum slide tray movement to arriveat the position corresponding to an encoded slide address signal. 11.The random access control apparatus of claim 10 wherein said currentposition determining means further comprises means responsive tomovement of said slide tray for generating an incremental positionsignal representing a movement of said slide tray between each of saidpredetermined slide positions.
 12. The random access control apparatusof claim 1 or 4 further comprising means responsive to said controlmeans for displaying the slide at the slide position to which saidtransport means is controlled.
 13. The random access control apparatusof claim 1 or 4 wherein said control means further comprises meansresponsive to standard slide advance signals at said data transducinginput for generating a single slide advance control signal, saidstandard slide advance signal including a predetermined number of pulsesof 1 millisecond period.
 14. The random access control apparatus ofclaim 13 wherein said encoded slide address signals are encoded by pulsewidth modulation techniques, each of said encoded slide address signalsrepresenting a binary data word defined by a predetermrned number ofbinary data bits, each of said data bits being a one or a zero, saiddata word capable of defining 2^(N) slide addresses, where N is equal tothe number of data bits in said binary data word, each data bit beingrepresented in said encoded slide address signal as a one or a zeropulse.
 15. The random access control apparatus of claim 14 wherein saidone and zero pulses include respective different predetermined periodswith respect to a nominal period of a predetermined time duration. 16.The random access control apparatus of claim 15 wherein said nominalperiod is 1 millisecond, a first of said one pulse or said zero pulsebeing greater than said reference period and said other of said onepulse or said zero pulse being less than said reference period inaccordance with a predetermined one and zero coding format.
 17. Therandom access control apparatus of claim 16 wherein each of said one andzero pulses includes a first predetermined polarity portion having aduration equal to a predetermined portion of said nominal period and asecond predetermined polarity portion that is determined by saidrespective different periods of said one pulse and said zero pulse. 18.The random access control apparatus of claim 16 wherein said controlmeans further comprises means responsive to a standard encoded cue stopsignal for generating a cue stop control signal, said standard encodedcue stop signal including a predetermined number of pulses ofapproximately 6.67 milliseconds.